This code is primarily maintained by:

Emily Markowitz (Emily.Markowitz AT noaa.gov; @EmilyMarkowitz-NOAA)
Research Fisheries Biologist
Bering Sea Groundfish Survey Team

Alaska Fisheries Science Center,
National Marine Fisheries Service,
National Oceanic and Atmospheric Administration,
Seattle, WA 98195

The code in this repository is regularly being updated and improved. Please refer to releases for finalized products and project milestones. The FOSS dataset is only updated once a year and may be slightly behind the GitHub repository. This metadata is regarding scripts and data last ran and pushed to the AFSC oracle on April 10, 2023.

Cite this data

Use the below bibtext citation, as cited in our group’s citation repository for citing the data from this data portal (NOAA Fisheries Alaska Fisheries Science Center, 2023). Add “note = {Accessed: mm/dd/yyyy}” to append the day this data was accessed.

## @misc{FOSSAFSCData,
##    author = {{NOAA Fisheries Alaska Fisheries Science Center}},
##    year = {2023}, 
##    title = {Fisheries One Stop Shop Public Data: RACE Division Bottom Trawl Survey Data Query},
##    howpublished = {https://www.fisheries.noaa.gov/foss},
##    publisher = {{U.S. Dep. Commer.}},
##    copyright = {Public Domain} 
## }

Collabrators and data users

Below are a few packages and products currently using this data. If you have developed a product, performed an analysis, or exhibited this data in any way, reach out so we can showcase your hard work.

Description Contacts
NOAA Fisheries Distribution Mapping and Analysis Portal NOAA Fisheries Office of Science and Technology
Pull data with python and explore the in-browser visualization tool. Reference their example Python notebook The Eric and Wendy Schmidt Center for Data Science and the Environment at UC Berkeley; Sam Pottinger, Ciera Martinez, Giulia Zarpellon, and Kevin Koy

Metadata

Data description (short)

This dataset includes zero-filled (presence and absence) observations and catch-per-unit-effort (CPUE) estimates for all identified species at for index stations by the Resource Assessment and Conservation Engineering Division (RACE) Groundfish Assessment Program (GAP) of the Alaska Fisheries Science Center (AFSC). There are no legal restrictions on access to the data. The data from this dataset are shared on the Fisheries One Stop Stop (FOSS) platform (https://www.fisheries.noaa.gov/foss/). The GitHub repository for the scripts that created this code can be found at https://github.com/afsc-gap-products/gap_public_data. For more information about codes used in the tables, please refer to the survey code books (https://www.fisheries.noaa.gov/resource/document/groundfish-survey-species-code-manual-and-data-codes-manual). These data were last updated April 10, 2023.

Data description (long)

The Resource Assessment and Conservation Engineering Division (RACE) Groundfish Assessment Program (GAP) of the Alaska Fisheries Science Center (AFSC) conducts fisheries-independent bottom trawl surveys to monitor the condition of the demersal fish and crab stocks of Alaska. These data are developed to describe the temporal distribution and abundance of commercially and ecologically important groundfish species, examine the changes in the species composition of the fauna over time and space, and describe the physical environment of the groundfish habitat.

There are no legal restrictions on access to the data. They reside in the public domain and can be freely distributed. Users must read and fully comprehend the metadata prior to use. Data should not be used beyond the limits of the source scale. Acknowledgement of NOAA, as the source from which these data were obtained, in any publications and/or other representations of these data, is suggested. These data are compiled and approved annually after each summer survey season. The data from previous years are unlikely to change substantially once published.

These data are zero-filled (presence and absence) observations from surveys conducted on fishing vessels. These surveys monitor trends in distribution and abundance of groundfish, crab, and bottom-dwelling species in Alaska’s marine ecosystems. These data include estimates of catch-per-unit-effort (CPUE) for all identified species for index stations. Some survey data are excluded, such as non-standard stations, surveys completed in earlier years using different/non-standard gear, and special tows and non-standard data collections.

Though not included in the public data, these surveys also collect oceanographic and environmental data, and biological data such as length, weight, stomach contents (to learn more about diet), otoliths (fish ear bones to learn about age), and tissue samples for genetic analysis, all of which can be shared upon special request. Also not included in the public data are estimated biomass (average total weight of all fish and crabs sampled) of crabs and groundfish that support the creation of annual stock assessments.

Bottom trawl surveys and regions

  • Aleutian Islands (AI) (Von Szalay and Raring, 2020)
    • Triennial (1990s)/Biennial since 2000 in even years
    • Modified Index-Stratified Random of Successful Stations Survey Design
  • Eastern Bering Sea Slope (BSS) (Hoff, 2016)
    • Intermittent (funding dependent)
    • Modified Index-Stratified Random of Successful Stations Survey Design
  • Eastern Bering Sea Shelf (EBS) (Markowitz et al., 2022)
    • Annual
    • Fixed stations at center of 20 x 20 nm grid
  • Gulf of Alaska (GOA) (Von Szalay and Raring, 2018)
    • Triennial (1990s)/Biennial since 2001 in odd years
    • Stratified Random Survey Design
  • Northern Bering Sea (NBS) (Markowitz et al., 2022)
    • Biennial/Annual
    • Fixed stations at center of 20 x 20 nm grid

Relevant technical memorandums

Hoff, G. R. (2016). Results of the 2016 eastern Bering Sea upper continental slope survey of groundfishes and invertebrate resources (NOAA Tech. Memo. NOAA-AFSC-339). U.S. Dep. Commer. https://doi.org/10.7289/V5/TM-AFSC-339
Markowitz, E. H., Dawson, E. J., Charriere, N. E., Prohaska, B. K., Rohan, S. K., Stevenson, D. E., and Britt, L. L. (2022). Results of the 2021 eastern and northern Bering Sea continental shelf bottom trawl survey of groundfish and invertebrate fauna (NOAA Tech. Memo. NMFS-F/SPO-452; p. 227). U.S. Dep. Commer. https://doi.org/10.25923/g1ny-y360
NOAA Fisheries Alaska Fisheries Science Center. (2023). Fisheries one stop shop public data: RACE division bottom trawl survey data query. https://www.fisheries.noaa.gov/foss; U.S. Dep. Commer.
Resource Assessment, A. F. S. C. (U.S.)., and Division, C. E. (2021). Groundfish survey data codes and forms. https://doi.org/https://doi.org/10.25923/kp5e-1g02
Von Szalay, P. G., and Raring, N. W. (2018). Data report: 2017 Gulf of Alaska bottom trawl survey (NOAA Tech. Memo. NMFS-AFSC-374). U.S. Dep. Commer. https://doi.org/http://doi.org/10.7289/V5/TM-AFSC-374
Von Szalay, P. G., and Raring, N. W. (2020). Data report: 2018 Aleutian Islands bottom trawl survey (NOAA Tech. Memo. NMFS-AFSC-409). U.S. Dep. Commer. https://doi.org/https://doi.org/10.25923/qe5v-fz70

User resources

Access constraints

There are no legal restrictions on access to the data. They reside in the public domain and can be freely distributed.

User Constraints: Users must read and fully comprehend the metadata prior to use. Data should not be used beyond the limits of the source scale. Acknowledgement of AFSC Groundfish Assessment Program, as the source from which these data were obtained, in any publications and/or other representations of these data, is suggested.

Address: Alaska Fisheries Science Center (AFSC) National Oceanic and Atmospheric Administration (NOAA)
Resource Assessment and Conservation Engineering Division (RACE)
Groundfish Assessment Program (GAP) 7600 Sand Point Way, N.E. bldg. 4
Seattle, WA 98115 USA

General questions and more specific data requests can be sent to afsc.gap.metadata@noaa.gov or submitted as an issue on our GitHub Organization. The version of this data used for stock assessments can be found through the Alaska Fisheries Information Network (AKFIN). For questions about the eastern Bering Sea surveys, contact Duane Stevenson (Duane.Stevenson@noaa.gov). For questions about the Gulf of Alaska or Aleutian Islands surveys, contact Ned Laman (Ned.Laman@noaa.gov). For questions specifically about crab data in any region, contact Mike Litzow (Mike.Litzow@noaa.gov), the Shellfish Assessment Program lead.

For questions, comments, and concerns specifically about the Fisheries One Stop Shop (FOSS) platform, please contact us using the Comments page on the FOSS webpage.

Column-level metadata

Column name Column name (long) Units Description
year Year year Year the survey was conducted in.
srvy Survey text abbreviated Abbreviated survey names. The column ‘srvy’ is associated with the ‘survey’ and ‘survey_id’ columns. Northern Bering Sea (NBS), Southeastern Bering Sea (EBS), Bering Sea Slope (BSS), Gulf of Alaska (GOA), Aleutian Islands (AI).
survey Survey Name text Name and description of survey. The column ‘survey’ is associated with the ‘srvy’ and ‘survey_id’ columns.
survey_definition_id Survey ID ID code This number uniquely identifies a survey. Name and description of survey. The column ‘survey_id’ is associated with the ‘srvy’ and ‘survey’ columns. For a complete list of surveys, review the code books.
cruise Cruise ID ID code This is a six-digit number identifying the cruise number of the form: YYYY99 (where YYYY = year of the cruise; 99 = 2-digit number and is sequential; 01 denotes the first cruise that vessel made in this year, 02 is the second, etc.).
haul Haul Number ID code This number uniquely identifies a sampling event (haul) within a cruise. It is a sequential number, in chronological order of occurrence.
hauljoin Haul ID ID code This is a unique numeric identifier assigned to each (vessel, cruise, and haul) combination.
stratum Stratum ID ID code RACE database statistical area for analyzing data. Strata were designed using bathymetry and other geographic and habitat-related elements. The strata are unique to each survey series. Stratum of value 0 indicates experimental tows.
station Station ID ID code Alpha-numeric designation for the station established in the design of a survey.
vessel_name Vessel Name text Name of the vessel used to collect data for that haul. The column ‘vessel_name’ is associated with the ‘vessel_id’ column. Note that it is possible for a vessel to have a new name but the same vessel id number. For a complete list of vessel ID codes, review the code books.
vessel_id Vessel ID ID code ID number of the vessel used to collect data for that haul. The column ‘vessel_id’ is associated with the ‘vessel_name’ column. Note that it is possible for a vessel to have a new name but the same vessel id number. For a complete list of vessel ID codes, review the code books.
vessel_id Vessel ID ID code ID number of the vessel used to collect data for that haul. The column ‘vessel_id’ is associated with the ‘vessel_name’ column. Note that it is possible for a vessel to have a new name but the same vessel id number. For a complete list of vessel ID codes, review the code books.
date_time Date and Time of Haul MM/DD/YYYY HH::MM The date (MM/DD/YYYY) and time (HH:MM) of the beginning of the haul.
latitude_dd_start Start Latitude (decimal degrees) decimal degrees Latitude (one hundred thousandth of a decimal degree) of the start of the haul.
longitude_dd_start Start Longitude (decimal degrees) decimal degrees Longitude (one hundred thousandth of a decimal degree) of the start of the haul.
latitude_dd_end End Latitude (decimal degrees) decimal degrees Latitude (one hundred thousandth of a decimal degree) of the end of the haul.
longitude_dd_end End Longitude (decimal degrees) decimal degrees Longitude (one hundred thousandth of a decimal degree) of the end of the haul.
species_code Taxon Code ID code The species code of the organism associated with the ‘common_name’ and ‘scientific_name’ columns. For a complete species list, review the code books.
itis ITIS Taxonomic Serial Number ID code Species code as identified in the Integrated Taxonomic Information System (https://itis.gov/).
worms World Register of Marine Species Taxonomic Serial Number ID code Species code as identified in the World Register of Marine Species (WoRMS) (https://www.marinespecies.org/).
common_name Taxon Common Name text The common name of the marine organism associated with the ‘scientific_name’ and ‘species_code’ columns. For a complete species list, review the code books.
scientific_name Taxon Scientific Name text The scientific name of the organism associated with the ‘common_name’ and ‘species_code’ columns. For a complete taxon list, review the code books.
taxon_confidence Taxon Confidence Rating category Confidence in the ability of the survey team to correctly identify the taxon to the specified level, based solely on identification skill (e.g., not likelihood of a taxon being caught at that station on a location-by-location basis). Quality codes follow: ‘High’: High confidence and consistency. Taxonomy is stable and reliable at this level, and field identification characteristics are well known and reliable. ‘Moderate’: Moderate confidence. Taxonomy may be questionable at this level, or field identification characteristics may be variable and difficult to assess consistently. ‘Low’: Low confidence. Taxonomy is incompletely known, or reliable field identification characteristics are unknown. Documentation: Species identification confidence in the eastern Bering Sea shelf survey (1982-2008), Species identification confidence in the eastern Bering Sea slope survey (1976-2010), and Species identification confidence in the Gulf of Alaska and Aleutian Islands surveys (1980-2011).
cpue_kgha Weight CPUE (kg/ha) kilograms per hectare Catch weight (kilograms) divided by area (hectares) swept by the net.
cpue_kgkm2 Weight CPUE (kg/km2) kilograms per kilometers squared Catch weight (kilograms) divided by area (squared kilometers) swept by the net.
cpue_noha Number CPUE (no/ha) count per hectare Catch number (in number of organisms) per area (hectares) swept by the net.
cpue_nokm2 Number CPUE (no/km2) count per kilometers squared Catch number (in number of organisms) per area (squared kilometers) swept by the net.
weight_kg Taxon Weight (kg) kilograms Weight (thousandths of a kilogram) of individuals in a haul by taxon.
count Taxon Count count, whole number resolution Total number of individuals caught in haul by taxon, represented in whole numbers.
bottom_temperature_c Bottom Temperature (Degrees Celsius) degrees Celsius Bottom temperature (tenths of a degree Celsius); NA indicates removed or missing values.
bottom_temperature_c Bottom Temperature (Degrees Celsius) degrees Celsius Bottom temperature (tenths of a degree Celsius); NA indicates removed or missing values.
surface_temperature_c Surface Temperature (Degrees Celsius) degrees Celsius Surface temperature (tenths of a degree Celsius); NA indicates removed or missing values.
depth_m Depth (m) degrees Celsius Bottom depth (tenths of a meter).
distance_fished_km Distance Fished (km) degrees Celsius Distance the net fished (thousandths of kilometers).
net_width_m Net Width (m) meters Measured or estimated distance (meters) between wingtips of the trawl.
net_height_m Net Height (m) meters Measured or estimated distance (meters) between footrope and headrope of the trawl.
area_swept_ha Area Swept (ha) hectares The area the net covered while the net was fishing (hectares), defined as the distance fished times the net width.
duration_hr Tow Duration (decimal hr) hours, tenths resolution This is the elapsed time between start and end of a haul (decimal hours).
performance Haul Performance Code category This denotes what, if any, issues arose during the haul. For more information, review the code books.

Access the data

While pulling data, please keep in mind that this is a very large file. For reference:

## RACEBASE_FOSS.FOSS_CPUE_ZEROFILLED: 
##   rows: 36342299
##   cols: 37
##   10.064 GB

Access data interactively through the FOSS platform

Select, filter, and package this and other NOAA Fisheries data from the Fisheries One Stop Shop (FOSS) platform. This user-friendly portal is maintained through Oracle APEX. A useful intro to using APIs in R can be found here. A user guide for the FOSS platform can be found here.

FOSS data platform

Connect to the API with R

More information about how to amend API links can be found here.

Load the first 25 rows of data

 # install.packages(c("httr", "jsonlite"))
library("httr")
library("jsonlite")
 # link to the API
api_link <- "https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/"
res <- httr::GET(url = api_link)
 # res # Test connection
data <- jsonlite::fromJSON(base::rawToChar(res$content))
 # names(data)
knitr::kable(head(data$items, 3)) 
year srvy survey survey_id cruise haul stratum station vessel_name vessel_id date_time latitude_dd longitude_dd species_code common_name scientific_name taxon_confidence cpue_kgha cpue_kgkm2 cpue_kg1000km2 cpue_noha cpue_nokm2 cpue_no1000km2 weight_kg count bottom_temperature_c surface_temperature_c depth_m distance_fished_km net_width_m net_height_m area_swept_ha duration_hr tsn ak_survey_id links
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 6.0E+000 7.22E+002 307-63 Vesteraalen 9.4E+001 05/17/2002 18:56:58 5.3737209999999997E+001 -1.6701570000000001E+002 9.502E+004 feathery bryozoan Eucratea loricata Low 1.7493999999999999E-002 1.7494449999999999E+000 1.7494451079999999E+003 NA NA NA 4.3999999999999997E-002 0 4.0999999999999996E+000 5.2999999999999998E+000 1.87E+002 1.5609999999999999E+000 1.6111999999999998E+001 7.25E+000 2.5150831999999994E+000 2.8000000000000003E-001 155809 878821 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878821
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 6.0E+000 7.22E+002 307-63 Vesteraalen 9.4E+001 05/17/2002 18:56:58 5.3737209999999997E+001 -1.6701570000000001E+002 7.9E+004 squid unid. Decapodiformes High 2.2266000000000001E-002 2.2265670000000002E+000 2.2265665009999998E+003 3.180809E+000 3.1808092900000003E+002 3.1808092869500001E+005 5.6000000000000001E-002 8.0E+000 4.0999999999999996E+000 5.2999999999999998E+000 1.87E+002 1.5609999999999999E+000 1.6111999999999998E+001 7.25E+000 2.5150831999999994E+000 2.8000000000000003E-001 NA 878822 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878822
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 6.0E+000 7.22E+002 307-63 Vesteraalen 9.4E+001 05/17/2002 18:56:58 5.3737209999999997E+001 -1.6701570000000001E+002 2.4191E+004 shortfin eelpout Lycodes brevipes High 3.5784000000000003E-002 3.5784099999999999E+000 3.5784104480000001E+003 7.9520199999999996E-001 7.9520231999999993E+001 7.9520232174000004E+004 8.9999999999999997E-002 2.0E+000 4.0999999999999996E+000 5.2999999999999998E+000 1.87E+002 1.5609999999999999E+000 1.6111999999999998E+001 7.25E+000 2.5150831999999994E+000 2.8000000000000003E-001 165258 878823 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878823

Load the first 10000 rows of data

res <- httr::GET(url = paste0(api_link, "?offset=0&limit=10000"))
data <- jsonlite::fromJSON(base::rawToChar(res$content))
dim(data$items)
## [1] 10000    36

Filter by Species name: Show all the data where the product name contains pollock Please note that here the word pollock is case sensitive.

The notation for finding a string is to use % around it. Since % is a reserved character in a URL, you have to replace % with %25.

res <- httr::GET(url = paste0(api_link, '?q={"common_name":{"$like":"%25pollock%25"}}'))
data <- jsonlite::fromJSON(base::rawToChar(res$content))
knitr::kable(head(data$items, 3))
year srvy survey survey_id cruise haul stratum station vessel_name vessel_id date_time latitude_dd longitude_dd species_code common_name scientific_name taxon_confidence cpue_kgha cpue_kgkm2 cpue_kg1000km2 cpue_noha cpue_nokm2 cpue_no1000km2 weight_kg count bottom_temperature_c surface_temperature_c depth_m distance_fished_km net_width_m net_height_m area_swept_ha duration_hr tsn ak_survey_id links
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 5.0E+000 7.21E+002 306-64 Vesteraalen 9.4E+001 05/17/2002 16:39:57 5.3768709999999999E+001 -1.6707259999999999E+002 2.174E+004 walleye pollock Gadus chalcogrammus High 6.3990000000000002E-003 6.3989099999999999E-001 6.3989137200000005E+002 3.9993200000000001E-001 3.9993211000000002E+001 3.9993210752999999E+004 1.6E-002 1.0E+000 4.4000000000000004E+000 5.0999999999999996E+000 6.5E+001 1.6759999999999999E+000 1.4919E+001 7.9009999999999998E+000 2.5004244E+000 3.1E-001 934083 878884 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878884
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 6.0E+000 7.22E+002 307-63 Vesteraalen 9.4E+001 05/17/2002 18:56:58 5.3737209999999997E+001 -1.6701570000000001E+002 2.174E+004 walleye pollock Gadus chalcogrammus High 7.7532230000000002E+000 7.7532226400000002E+002 7.7532226369299996E+005 1.1530434E+001 1.153043367E+003 1.1530433665179999E+006 1.95E+001 2.9E+001 4.0999999999999996E+000 5.2999999999999998E+000 1.87E+002 1.5609999999999999E+000 1.6111999999999998E+001 7.25E+000 2.5150831999999994E+000 2.8000000000000003E-001 934083 878838 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878838
2002 AI Aleutian Islands Bottom Trawl Survey 5.2E+001 2.00201E+005 2.0E+000 7.22E+002 303-64 Vesteraalen 9.4E+001 05/17/2002 10:20:08 5.3790370000000003E+001 -1.6725810000000001E+002 2.174E+004 walleye pollock Gadus chalcogrammus High 1.06858064E+002 1.0685806397E+004 1.0685806397293E+007 1.2519113900000001E+002 1.2519113928999999E+004 1.251911392852E+007 2.5180000000000001E+002 2.95E+002 4.0999999999999996E+000 5.0E+000 1.64E+002 1.488E+000 1.5836E+001 7.1589999999999998E+000 2.3563968000000002E+000 2.7000000000000002E-001 934083 878858 self , https://apps-st.fisheries.noaa.gov/ods/foss/afsc_groundfish_survey/878858

Subset data

Here, as an example, we can subset the data for the 2018 Aleutian Islands Bottom Trawl Survey.

res <- httr::GET(url = api_link, query = list(year = "2018", srvy = "AI"))
data <- jsonlite::fromJSON(base::rawToChar(res$content))
x <- data$items
x <- x[,c("srvy", "year", "stratum", "station", "vessel_name", "latitude_dd", "longitude_dd",
          "species_code", "common_name", "scientific_name", "taxon_confidence",
          "cpue_kgha", "cpue_noha", "weight_kg", "count",
          "bottom_temperature_c", "surface_temperature_c", "depth_m")]
knitr::kable(head(x, 3))

Access data via Oracle

If the user has access to the AFSC Oracle database, the user can use SQL developer to view and pull the FOSS public data directly from the RACEBASE_FOSS Oracle schema.

Connect to Oracle from R

Many users will want to access the data from Oracle using R. The user will need to install the RODBC R package and ask OFIS (IT) connect R to Oracle. Then, use the following code in R to establish a connection from R to Oracle:

Here, the user can write in their username and password directly into the RODBC connect function. Never save usernames or passwords in scripts that may be intentionally or unintentionally shared with others. If no username and password is entered in the function, pop-ups will appear on the screen asking for the username and password.

 #' Define RODBC connection to ORACLE
 #'
 #' @param schema default = 'AFSC'. 
 #'
 #' @return oracle channel connection
 #' @export
 #'
 #' @examples
 #' # Not run
 #' # channel <- oracle_connect()
oracle_connect <- function(
    schema='AFSC', 
    username = NULL, 
    passowrd = NULL){(echo=FALSE)
  
  library("RODBC")
  library("getPass")
  if (is.null(username)) {
    username <- getPass(msg = "Enter your ORACLE Username: ")
  }
  if (is.null(password)) {
    password <- getPass(msg = "Enter your ORACLE Password: ")
  }
  channel  <- RODBC::odbcConnect(
    paste(schema),
    paste(username),
    paste(password), 
    believeNRows=FALSE)
  return(channel)
}

channel <- oracle_connect()

Select all data

Once connected, pull and save (if needed) the table into the R environment.

 # Pull table from oracle into R environment
a <- RODBC::sqlQuery(channel, "SELECT * FROM RACEBASE_FOSS.FOSS_CPUE_ZEROFILLED")
 # Save table to local directory
write.csv(x = a, file = "RACEBASE_FOSS-FOSS_CPUE_ZEROFILLED.csv")

Subset data

To pull a small subset of the data (especially since files like RACEBASE_FOSS.FOSS_CPUE_ZEROFILLED are so big), use a variation of the following code. Here, we are pulling EBS Pacific cod from 2010 - 2021:

 # Pull data
a <- RODBC::sqlQuery(channel, "SELECT * FROM RACEBASE_FOSS.FOSS_CPUE_ZEROFILLED 
WHERE SRVY = 'EBS' 
AND COMMON_NAME = 'Pacific cod' 
AND YEAR >= 2010 
AND YEAR < 2021")
 # Save table to local directory
write.csv(x = a, file = "RACEBASE_FOSS-FOSS_CPUE_ZEROFILLED-ebs_pcod_2010-2020.csv")

Join catch and haul data

If this file is too large, you can join catch and haul data. Pull the RACEBASE_FOSS.JOIN_FOSS_CPUE_CATCH and RACEBASE_FOSS.JOIN_FOSS_CPUE_HAUL tables, which are much smaller, and combine the table locally yourself.

These datasets, JOIN_FOSS_CPUE_CATCH and JOIN_FOSS_CPUE_HAUL, when full joined by the HAULJOIN variable, includes zero-filled (presence and absence) observations and catch-per-unit-effort (CPUE) estimates for all identified species at for index stations by the Resource Assessment and Conservation Engineering Division (RACE) Groundfish Assessment Program (GAP) of the Alaska Fisheries Science Center (AFSC). There are no legal restrictions on access to the data. The data from this dataset are shared on the Fisheries One Stop Stop (FOSS) platform (https://www.fisheries.noaa.gov/foss/). The GitHub repository for the scripts that created this code can be found at https://github.com/afsc-gap-products/gap_public_data. For more information about codes used in the tables, please refer to the survey code books (https://www.fisheries.noaa.gov/resource/document/groundfish-survey-species-code-manual-and-data-codes-manual). These data were last updated April 10, 2023.

## RACEBASE_FOSS.JOIN_FOSS_CPUE_CATCH: 
##   rows: 36342299
##   cols: 13
##   2.785 GB
## RACEBASE_FOSS.JOIN_FOSS_CPUE_HAUL: 
##   rows: 31608
##   cols: 25
##   0.007 GB

To join these tables in Oracle, you may use a variant of the following code:

SELECT * FROM RACEBASE_FOSS.JOIN_FOSS_CPUE_HAUL
FULL JOIN RACEBASE_FOSS.JOIN_FOSS_CPUE_CATCH
ON RACEBASE_FOSS.JOIN_FOSS_CPUE_HAUL.HAULJOIN = RACEBASE_FOSS.JOIN_FOSS_CPUE_CATCH.HAULJOIN;

Suggestions and comments

If the data or metadata can be improved, please create a pull request, submit an issue to the GitHub organization, submit an issue to the code’s repository, reach out the the survey team leads (listed above), or to Fisheries One Stop Shop (FOSS) platform managers.

R version metadata

This data was compiled using the below R environment and R packages:

sessionInfo()
## R version 4.2.2 (2022-10-31 ucrt)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 10 x64 (build 19045)
## 
## Matrix products: default
## 
## locale:
## [1] LC_COLLATE=English_United States.utf8  LC_CTYPE=English_United States.utf8    LC_MONETARY=English_United States.utf8
## [4] LC_NUMERIC=C                           LC_TIME=English_United States.utf8    
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
##  [1] flextable_0.8.6   RODBC_1.3-20      jsonlite_1.8.4    httr_1.4.5        akgfmaps_2.3.1    stars_0.6-0       abind_1.4-5      
##  [8] shadowtext_0.1.2  sf_1.0-9          raster_3.6-20     sp_1.6-0          rmapshaper_0.4.6  gstat_2.1-0       ggspatial_1.1.7  
## [15] classInt_0.4-9    viridis_0.6.2     viridisLite_0.4.1 ggplot2_3.4.1     purrr_1.0.1       gtExtras_0.4.5    gt_0.9.0         
## [22] knitr_1.42        badger_0.2.3      stringr_1.5.0     janitor_2.2.0     rmarkdown_2.20    readr_2.1.4       magrittr_2.0.3   
## [29] dplyr_1.1.0       tidyr_1.3.0      
## 
## loaded via a namespace (and not attached):
##   [1] uuid_1.1-0              systemfonts_1.0.4       lwgeom_0.2-11           usethis_2.1.6           geojsonlint_0.4.0      
##   [6] digest_0.6.31           yulab.utils_0.0.6       htmltools_0.5.4         fansi_1.0.4             memoise_2.0.1          
##  [11] paletteer_1.5.0         gert_1.9.2              tzdb_0.3.0              credentials_1.3.2       officer_0.6.1          
##  [16] vroom_1.6.1             xts_0.13.0              askpass_1.1             timechange_0.2.0        gfonts_0.2.0           
##  [21] colorspace_2.1-0        rappdirs_0.3.3          jsonvalidate_1.3.2      gitcreds_0.1.2          textshaping_0.3.6      
##  [26] xfun_0.37               crayon_1.5.2            dlstats_0.1.6           zoo_1.8-11              glue_1.6.2             
##  [31] gtable_0.3.1            V8_4.2.2                scales_1.2.1            fontquiver_0.2.1        DBI_1.1.3              
##  [36] Rcpp_1.0.10             xtable_1.8-4            units_0.8-1             bit_4.0.5               proxy_0.4-27           
##  [41] readtext_0.81           intervals_0.15.2        fontLiberation_0.1.0    FNN_1.1.3.1             RColorBrewer_1.1-3     
##  [46] ellipsis_0.3.2          pkgconfig_2.0.3         farver_2.1.1            sass_0.4.5              utf8_1.2.3             
##  [51] here_1.0.1              httr2_0.2.2             crul_1.3                tidyselect_1.2.0        rlang_1.0.6            
##  [56] later_1.3.0             munsell_0.5.0           tools_4.2.2             cachem_1.0.6            cli_3.6.0              
##  [61] generics_0.1.3          evaluate_0.20           fastmap_1.1.0           ragg_1.2.5              yaml_2.3.7             
##  [66] sys_3.4.1               rematch2_2.1.2          bit64_4.0.5             fs_1.6.1                zip_2.2.2              
##  [71] gh_1.4.0                mime_0.12               xml2_1.3.3              compiler_4.2.2          rstudioapi_0.14        
##  [76] curl_5.0.0              e1071_1.7-13            spacetime_1.2-8         tibble_3.1.8            bslib_0.4.2            
##  [81] stringi_1.7.12          highr_0.10              gdtools_0.3.1           lattice_0.20-45         commonmark_1.8.1       
##  [86] fontBitstreamVera_0.1.1 markdown_1.5            vctrs_0.5.2             pillar_1.8.1            lifecycle_1.0.3        
##  [91] BiocManager_1.30.20     jquerylib_0.1.4         data.table_1.14.6       httpuv_1.6.9            R6_2.5.1               
##  [96] promises_1.2.0.1        KernSmooth_2.23-20      gridExtra_2.3           codetools_0.2-18        fontawesome_0.5.0      
## [101] openssl_2.0.5           rprojroot_2.0.3         withr_2.5.0             httpcode_0.3.0          parallel_4.2.2         
## [106] hms_1.1.2               terra_1.7-18            grid_4.2.2              class_7.3-20            rvcheck_0.2.1          
## [111] snakecase_0.11.0        shiny_1.7.4             lubridate_1.9.2

NOAA README

This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project code is provided on an ‘as is’ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.

NOAA License

Software code created by U.S. Government employees is not subject to copyright in the United States (17 U.S.C. §105). The United States/Department of Commerce reserve all rights to seek and obtain copyright protection in countries other than the United States for Software authored in its entirety by the Department of Commerce. To this end, the Department of Commerce hereby grants to Recipient a royalty-free, nonexclusive license to use, copy, and create derivative works of the Software outside of the United States.

NOAA Fisheries

U.S. Department of Commerce | National Oceanographic and Atmospheric Administration | NOAA Fisheries